package com.ruoyi.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 在用门店基础信息对象 active_store
 *
 * @author ruoyi
 * @date 2025-05-24
 */
public class ActiveStore extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 门店唯一标识符(主键) */
    private Long id;

    /** 门店名称(如"北京朝阳大悦城店") */
    @Excel(name = "门店名称")
    private String storeName;

    /** 门店编号(如"BJCY-001") */
    @Excel(name = "门店编号")
    private String storeCode;

    /** 门店创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "门店创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date addTime;

    /** 操作员工(创建/修改人) */
    @Excel(name = "操作员工(创建/修改人)")
    private String operator;

    /** 门店类型 */
    @Excel(name = "门店类型")
    private String storeType;

    /** 所属区域(如"华北区") */
    @Excel(name = "所属区域")
    private String region;

    /** 所属省份 */
    @Excel(name = "所属省份")
    private String province;

    /** 所属城市 */
    @Excel(name = "所属城市")
    private String city;

    /** 所属区县 */
    @Excel(name = "所属区县")
    private String district;

    /** 详细地址 */
    @Excel(name = "详细地址")
    private String address;

    /** 门店联系人 */
    @Excel(name = "门店联系人")
    private String contactPerson;

    /** 联系电话 */
    @Excel(name = "联系电话")
    private String contactPhone;

    /** 营业时间(如"10:00-22:00") */
    @Excel(name = "营业时间")
    private String businessHours;

    /** 门店状态 */
    @Excel(name = "门店状态")
    private String status;

    /** 最后更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date lastUpdateTime;

    /** 经度(用于地图定位) */
    @Excel(name = "经度(用于地图定位)")
    private BigDecimal longitude;

    /** 纬度(用于地图定位) */
    @Excel(name = "纬度(用于地图定位)")
    private BigDecimal latitude;

    /** 手机号 */
    @Excel(name = "手机号")
    private String phone;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }

    public void setStoreName(String storeName)
    {
        this.storeName = storeName;
    }

    public String getStoreName()
    {
        return storeName;
    }

    public void setStoreCode(String storeCode)
    {
        this.storeCode = storeCode;
    }

    public String getStoreCode()
    {
        return storeCode;
    }

    public void setAddTime(Date addTime)
    {
        this.addTime = addTime;
    }

    public Date getAddTime()
    {
        return addTime;
    }

    public void setOperator(String operator)
    {
        this.operator = operator;
    }

    public String getOperator()
    {
        return operator;
    }

    public void setStoreType(String storeType)
    {
        this.storeType = storeType;
    }

    public String getStoreType()
    {
        return storeType;
    }

    public void setRegion(String region)
    {
        this.region = region;
    }

    public String getRegion()
    {
        return region;
    }

    public void setProvince(String province)
    {
        this.province = province;
    }

    public String getProvince()
    {
        return province;
    }

    public void setCity(String city)
    {
        this.city = city;
    }

    public String getCity()
    {
        return city;
    }

    public void setDistrict(String district)
    {
        this.district = district;
    }

    public String getDistrict()
    {
        return district;
    }

    public void setAddress(String address)
    {
        this.address = address;
    }

    public String getAddress()
    {
        return address;
    }

    public void setContactPerson(String contactPerson)
    {
        this.contactPerson = contactPerson;
    }

    public String getContactPerson()
    {
        return contactPerson;
    }

    public void setContactPhone(String contactPhone)
    {
        this.contactPhone = contactPhone;
    }

    public String getContactPhone()
    {
        return contactPhone;
    }

    public void setBusinessHours(String businessHours)
    {
        this.businessHours = businessHours;
    }

    public String getBusinessHours()
    {
        return businessHours;
    }

    public void setStatus(String status)
    {
        this.status = status;
    }

    public String getStatus()
    {
        return status;
    }

    public void setLastUpdateTime(Date lastUpdateTime)
    {
        this.lastUpdateTime = lastUpdateTime;
    }

    public Date getLastUpdateTime()
    {
        return lastUpdateTime;
    }

    public void setLongitude(BigDecimal longitude)
    {
        this.longitude = longitude;
    }

    public BigDecimal getLongitude()
    {
        return longitude;
    }

    public void setLatitude(BigDecimal latitude)
    {
        this.latitude = latitude;
    }

    public BigDecimal getLatitude()
    {
        return latitude;
    }

    public void setPhone(String phone)
    {
        this.phone = phone;
    }

    public String getPhone()
    {
        return phone;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("storeName", getStoreName())
                .append("storeCode", getStoreCode())
                .append("addTime", getAddTime())
                .append("operator", getOperator())
                .append("storeType", getStoreType())
                .append("region", getRegion())
                .append("province", getProvince())
                .append("city", getCity())
                .append("district", getDistrict())
                .append("address", getAddress())
                .append("contactPerson", getContactPerson())
                .append("contactPhone", getContactPhone())
                .append("businessHours", getBusinessHours())
                .append("status", getStatus())
                .append("remark", getRemark())
                .append("lastUpdateTime", getLastUpdateTime())
                .append("longitude", getLongitude())
                .append("latitude", getLatitude())
                .append("phone", getPhone())
                .toString();
    }
}
